Normally, it is difficult to achieve secure encrypted transmission via insecure communication channels, such as public telephone lines, data networks, in radio-transmission operations, and so on. Conventional encrypting algorithms require that keys in the form of private or public keys be transmitted between the units. Such key transmission does, however, cause practical problems. The keys may be transmitted on separate secure channels, but this solution is inconvenient, expensive and time-consuming. Alternatively, the keys may be transmitted via the insecure channel on which the encrypted message is then to be transmitted. However, this procedure involves a security risk. Also when encrypting systems having so called open keys are used, such as the RSA system, the transmission of the key means that larger and more complex keys and encrypting algorithms are required in order to ensure that the encrypted transmission is sufficiently secure, which naturally involves increased inconvenience and costs.
Similar problems are encountered in order to provide secure verification of units, so called authentication, via insecure communication channels. Such authentication is based on transmission between the units of data that are based on a unique key. For example, the key may be used to encrypt a check sum based on a transmitted or received message. Also in this case one is confronted with the same problems as those found in other encrypted transmission in the case of transmission of keys between the units.